package org.chen.domain.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import org.chen.domain.entity.VideoAvatar;
import org.chen.domain.entity.VideoVoice;

import java.time.LocalDateTime;
import java.util.List;

@Data
public class ConfigVO {
    private String id;
    private String name;

    // 数字人和语音字段
    private String avatarId;
    private String voiceId;
    // 添加虚拟人物和语音的详情
    private VideoAvatar avatar;  // 虚拟人物详情
    private VideoVoice voice;    // 语音详情

    // 背景相关字段
    private String backgroundColor;
    private String backgroundFit;
    private String backgroundPlayStyle;
    private String backgroundType;
    private String backgroundUrl;
    private String backgroundId;

    // 新增多背景支持
    private List<String> backgroundUrls;
    private List<String> backgroundIds;

    // 新增人物配置字段
    @JsonProperty("xOffset")
    private Double xOffset;

    @JsonProperty("yOffset")
    private Double yOffset;

    private Double scale;
    // 其他配置字段
    private Integer width;
    private Integer height;
    private Boolean isDefault;
    private Boolean isCaption;
    private Boolean one_to_one;
    private LocalDateTime createTime;
    private LocalDateTime updateTime;

    // 新增配置类型字段
    private String configType = "single";
    // 对于多数字人配置，数字人数量
    private Integer avatarCount;
}